Skip to content

Add BLS key generation and hashing#1355

Merged
palas merged 6 commits intomasterfrom
bls-key-gen-and-hash
Apr 3, 2026
Merged

Add BLS key generation and hashing#1355
palas merged 6 commits intomasterfrom
bls-key-gen-and-hash

Conversation

@palas
Copy link
Copy Markdown
Contributor

@palas palas commented Mar 23, 2026

Changelog

- description: |
    Added support for generating and hashing BLS keys.
  type:
    - feature

Context

This addresses the first part of: input-output-hk/ouroboros-leios#776

This is based on cardano-api changes of PR: IntersectMBO/cardano-api#1148

How to trust this PR

Highlight important bits of the PR that will make the review faster. If there are commands the reviewer can run to observe the new behavior, describe them.

Checklist

  • Commit sequence broadly makes sense and commits have useful messages
  • New tests are added if needed and existing tests are updated. See Running tests for more details
  • Self-reviewed the diff

@palas palas self-assigned this Mar 23, 2026
Copilot AI review requested due to automatic review settings March 23, 2026 17:14
@palas palas changed the title Bls key gen and hash Add BLS key generation and hashing Mar 23, 2026
Copy link
Copy Markdown

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

Adds CLI support for generating and hashing node operational BLS keys, along with help-text goldens and dependency pinning needed to build against the required cardano-api changes.

Changes:

  • Introduce node key-gen-BLS and node key-hash-BLS commands (and equivalents under latest/conway).
  • Wire new commands through CLI option parsing, command types, and runtime handlers.
  • Update golden help outputs and pin cardano-api via source-repository-package in cabal.project.

Reviewed changes

Copilot reviewed 15 out of 15 changed files in this pull request and generated 4 comments.

Show a summary per file
File Description
cardano-cli/src/Cardano/CLI/EraIndependent/Node/Run.hs Implements BLS key generation and key hashing command handlers.
cardano-cli/src/Cardano/CLI/EraIndependent/Node/Option.hs Adds optparse-applicative parsers for key-gen-BLS and key-hash-BLS.
cardano-cli/src/Cardano/CLI/EraIndependent/Node/Command.hs Introduces new command constructors and argument records for BLS commands.
cardano-cli/src/Cardano/CLI/EraIndependent/Key/Run.hs Extends key-type handling to include BLS verification keys in relevant command paths.
cardano-cli/test/cardano-cli-golden/files/golden/help/*.cli Adds/updates golden help text for the new BLS node subcommands across eras.
cabal.project Pins cardano-api from Git to pick up required upstream changes.

💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

Comment thread cardano-cli/src/Cardano/CLI/EraIndependent/Node/Run.hs
Comment thread cardano-cli/src/Cardano/CLI/EraIndependent/Node/Run.hs Outdated
Comment thread cardano-cli/src/Cardano/CLI/EraIndependent/Node/Run.hs
Comment thread cardano-cli/src/Cardano/CLI/EraIndependent/Node/Run.hs
Copy link
Copy Markdown
Contributor

@Jimbo4350 Jimbo4350 left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM, one comment

Comment thread cardano-cli/src/Cardano/CLI/EraIndependent/Node/Run.hs Outdated
@palas palas added the next-update For issues that require an update of a dependency label Mar 23, 2026
@palas palas force-pushed the bls-key-gen-and-hash branch 4 times, most recently from 4f5df59 to 23272b2 Compare March 23, 2026 21:15
@palas palas force-pushed the bls-key-gen-and-hash branch 2 times, most recently from d74bebf to 3cdc0d9 Compare March 27, 2026 03:41
@palas palas force-pushed the bls-key-gen-and-hash branch 4 times, most recently from 7e3356b to bb7f2dc Compare March 30, 2026 22:54
palas added 5 commits April 3, 2026 02:47
Use `writeTextFileWithOwnerPermissions` instead of `writeTextFile` for
the signing key
Drop the `:: () =>` constraint from `runNodeKeyGenBLSCmd` and
`runNodeKeyHashBlsCmd` signatures
Use default for the description of the text envelope
@palas palas changed the base branch from master to geo2a/bump-api April 3, 2026 00:49
@palas palas force-pushed the bls-key-gen-and-hash branch from bb7f2dc to b53d421 Compare April 3, 2026 00:49
Base automatically changed from geo2a/bump-api to master April 3, 2026 02:45
@palas palas added this pull request to the merge queue Apr 3, 2026
Merged via the queue into master with commit aa162d1 Apr 3, 2026
25 checks passed
@palas palas deleted the bls-key-gen-and-hash branch April 3, 2026 03:09
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

leios next-update For issues that require an update of a dependency

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Tools for key generation and registration

4 participants